
/*
*  上传单个图片
    @params   url   图片临时地址   类型String
*/
function upload(url) {
  //上传图片
  let nowtime = new Date().getTime()
  
  let ext = url.split(".").pop()
  return wx.cloud.uploadFile({
      cloudPath: nowtime + "." + ext,
      filePath: url
  })
}
/* 
*批量上传图片
@params files 对象数组 [{url:"**.png"},{url:"***.png"}]
 @return  字符串数组   ["**.png","****.png"]
*/

async function multiUpload(files) {
  //设置空数组，在里面存放promise
  let arr = []
  //循环临时图片地址数组
  files.forEach(async (item, index) => {
      let nowtime = new Date().getTime()          //文件名
      let ext = item.url.split(".").pop()         //扩展名
      let upload = wx.cloud.uploadFile({
          cloudPath: nowtime + index + "." + ext,
          filePath: item.url
      })
      arr.push(upload)            //生成promise数组
  })

  //所有的item都执行完毕（上传图片）完毕之后，才返回结果
  let result = await Promise.all(arr)
  // 对象数组转化成字符串数组
  let image = result.map(item => {
      return item.fileID
  })
  return image
}

export {upload,multiUpload}